from flask import Flask,render_template, request
import 关键词提取 as util
import PoemGenerator as generator
import picture as abc
import json
app = Flask(__name__)


@app.route('/')
def index():
   """
   函数功能：生成前端页面
   作者：虞俊文
   :return: 返回已经写好的页面
   """
   return render_template("Web.html")


@app.route("/get_data", methods=['get','post'])
def get_data():
    # 获取前端的内容
    """
    函数功能：获取ajax请求传送过来的场景信息，将场景信息利用关键词提取算法处理后获得关键词。
    并将关键词传入poemgenerator算法中获得生成的诗词，最后将诗词返回给ajax请求
   作者：虞俊文
    :return:
    """
    data = request.values.get("tt")

    result = util.main(data)

    poem = generator.main(result)


    return poem

@app.route("/post_keyword", methods=['get','post'])
def post_keyword():
     # 实现关键词生成诗词功能
     """
     函数功能：获得前端的关键词信息将其传入后端算法，获得生成的诗词再将其返回至前端
     作者：虞俊文
     :return:
     """
     data=request.values.get("keyword")

     poem1 = generator.main(data)

     return poem1

@app.route("/test", methods=['get','post'])
def get_picture():
     # 获取本地上传的图片
     """
     函数功能：前后端连接，在后端获取从前端上传的图片，
     并将其传入后端图片识别算法中获得关键词，然后传入关键词算法获得生成的诗句，
     将其返回至前端显示
     作者：朱咏豪
     :return: 对图片识别后的诗句
     """
     print("============")
     # html里input name=“pic”

     data = request.files.get("pic")
     # 用filename来传
     f = open("./static/img/"+data.filename, "wb+")

     f.write(data.read())

     keyword1 = abc.main(data.filename)

     poem2 = generator.main(keyword1)

     result={"res":str(poem2)}

     content=json.dumps(result)

     print(poem2)

     return content



if __name__ == '__main__':
    app.run()
